As is known in the art, many application services require clients to maintain a constant connection in order to function properly. For example, the eXtensible Messaging and Presence Protocol (XMPP), which is a set of open eXtensible Markup Language (XML) technologies for presence and real-time communication, requires persistent client connections to support instant messaging and presence information. However, some clients are unable to maintain constant connectivity for a variety of reasons.
Mobile clients operated in harsh environments may require and/or experience periodic transmission silence and may be plagued by unreliable network connectivity. Web clients issue stateless requests to web servers without maintaining persistent connections. Application services, therefore, cannot rely upon these clients to maintain a constant connection.